tomcat热加载、热部署 您所在的位置:网站首页 tomcat热部署 线程复用 tomcat热加载、热部署

tomcat热加载、热部署

2024-05-20 09:42| 来源: 网络整理| 查看: 265

上文:tomcat线程模型-源码解析

热加载和热部署是什么?

请查看原来的写过的文章:热部署和热加载有什么区别?

tomcat热加载和执热部署都是通过后台进程检测项目中的.class和目录是否发生变化。

热加载与热部布署检测

热加载

开启热加载 在 context.xml 中配置 reloadable="true"

代码语言:javascript复制

配置完后tomcat运行中会检测WEB-INF/classes和WEB-INF/lib 是否发生变化,如果发生变化进行加载。

那么热加载的流程是: 设置当前context(上下文)不能接受请求的标志为:true, 停止当前的context(上下文),启动当前context(上下文),重新设置当前context不能接收请求的标志为:false。

代码位置:org.apache.catalina.core.ContainerBase.ContainerBackgroundProcessor#run

每隔10s就会自动检测是否有代码变动。

源码实现

热部署和热加载为该线程

位置:org.apache.catalina.core.ContainerBase#threadStart

代码语言:javascript复制protected void threadStart() { if (thread != null) { return; } if (backgroundProcessorDelay


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有